package com.cq.hd.product.api.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.beans.BeanInfo;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 活动分享赚信息
 *
 * @author much
 * @since 2024/11/01 15:46
 */
@Data
public class ActiveShareRewardVo implements Serializable {

    private static final long serialVersionUID = -1933192227942477924L;

    @ApiModelProperty(value = "奖励方式：1-佣金 3-积分")
    private Integer rewardType;

    @ApiModelProperty(value = "佣金")
    private BigDecimal commissionAmt;

    @ApiModelProperty(value = "佣金比例")
    private BigDecimal commissionRate;

    @ApiModelProperty(value = "积分")
    private BigDecimal rewardPoints;

    @ApiModelProperty(value = "是否经纪人：0-不是 1-是")
    private Integer agentState;

    @ApiModelProperty(value = "是否活动商家：0-不是 1-是 (暂时没用)")
    private Integer businessState;

    @ApiModelProperty(value = "一级经纪人信息（如果从一级经纪人邀请码查看商品有值）")
    private AgentInfo level1Agent;

    @ApiModelProperty(value = "商家信息")
    private BusinessInfo businessInfo;

    @ApiModelProperty(value = "经纪人申请页面类型, 0:无 1:一级经纪人申请 2:二级经纪人申请")
    private Integer agentApplyPageType = 0;

    @Data
    public static class AgentInfo {
        @ApiModelProperty(value = "经纪人邀请码")
        private String inviteCode;

        @ApiModelProperty(value = "经纪人id")
        private Long agentUserId;

        @ApiModelProperty(value = "经纪人昵称")
        private String agentNickName;

        @ApiModelProperty(value = "经纪人头像")
        private String agentAvatar;
    }

    @Data
    public static class BusinessInfo {

        @ApiModelProperty(value = "商家id")
        private Long businessId;

        @ApiModelProperty(value = "商家简称")
        private String businessShortName;

        @ApiModelProperty(value = "商家头像")
        private String businessAvatar;

    }

}
